package com.cmd.project.domain;

import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.cmd.common.annotation.Excel;
import com.cmd.common.core.domain.BaseEntity;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

/**
 * 学生报名信息对象 pro_student_registration
 *
 * @author cq
 * @date 2025-04-02
 */
public class StudentRegistration extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 学生姓名
     */
    @Excel(name = "学生姓名")
    private String name;

    /**
     * 身份证号码
     */
    @Excel(name = "身份证号码")
    private String idNumber;

    /**
     * 通讯地址
     */
    @Excel(name = "通讯地址")
    private String address;

    /**
     * 年级
     */
    @Excel(name = "年级")
    private String grade;

    /**
     * 参赛组别
     */
    @Excel(name = "参赛组别")
    private String competitionGroup;

    /**
     * 参赛编号
     */
    @Excel(name = "参赛编号")
    private String competitionNumber;

    /**
     * 作品高
     */
    @Excel(name = "作品高")
    private Double height;

    /**
     * 作品宽
     */
    @Excel(name = "作品宽")
    private Double width;

    /**
     * 作品类型
     */
    @Excel(name = "作品类型")
    private String workType;

    /**
     * 其他作品类型
     */
    @Excel(name = "其他作品类型")
    private String otherWorkType;

    /**
     * 作品名称
     */
    @Excel(name = "作品名称")
    private String workName;


    /**
     * 指导老师
     */
    @Excel(name = "指导老师")
    private String teacher;

    /**
     * 就读学校
     */
    @Excel(name = "就读学校")
    private String school;

    /**
     * 学生家长
     */
    @Excel(name = "学生家长")
    private String parentName;

    /**
     * 家长电话
     */
    @Excel(name = "家长电话")
    private String parentPhone;

    /**
     * 作品缩略图
     */
    private String thumbnail;

    @Excel(name = "作品缩略图")
    private String thumbnailUrl;
    /**
     * 预审：3'通过',2 '未通过', 1'待审核'
     */
    private String preliminaryReview;

    /**
     * 初审 :3'通过',2 '未通过', 1'待审核'
     */
    private String firstReview;

    /**
     * 复审:3'通过',2 '未通过', 1'待审核'
     */
    private String finalReview;
    private String preliminaryOption;
    private String firstOption;
    private String finalOption;
    private String activityId;

    /**
     * 奖项
     */
    @Excel(name = "奖项")
    private String award;

    public String getActivityId() {
        return activityId;
    }

    public void setActivityId(String activityId) {
        this.activityId = activityId;
    }

    public String getThumbnailUrl() {
        return thumbnailUrl;
    }

    public void setThumbnailUrl(String thumbnailUrl) {
        this.thumbnailUrl = thumbnailUrl;
    }

    public String getPreliminaryOption() {
        return preliminaryOption;
    }

    public void setPreliminaryOption(String preliminaryOption) {
        this.preliminaryOption = preliminaryOption;
    }

    public String getFirstOption() {
        return firstOption;
    }

    public void setFirstOption(String firstOption) {
        this.firstOption = firstOption;
    }

    public String getFinalOption() {
        return finalOption;
    }

    public void setFinalOption(String finalOption) {
        this.finalOption = finalOption;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setIdNumber(String idNumber) {
        this.idNumber = idNumber;
    }

    public String getIdNumber() {
        return idNumber;
    }

    public void setGrade(String grade) {
        this.grade = grade;
    }

    public String getGrade() {
        return grade;
    }

    public void setCompetitionGroup(String competitionGroup) {
        this.competitionGroup = competitionGroup;
    }

    public String getCompetitionGroup() {
        return competitionGroup;
    }

    public void setCompetitionNumber(String competitionNumber) {
        this.competitionNumber = competitionNumber;
    }

    public String getCompetitionNumber() {
        return competitionNumber;
    }

    public void setWorkType(String workType) {
        this.workType = workType;
    }

    public String getWorkType() {
        return workType;
    }

    public void setOtherWorkType(String otherWorkType) {
        this.otherWorkType = otherWorkType;
    }

    public String getOtherWorkType() {
        return otherWorkType;
    }

    public void setWorkName(String workName) {
        this.workName = workName;
    }

    public String getWorkName() {
        return workName;
    }

    public void setSchool(String school) {
        this.school = school;
    }

    public String getSchool() {
        return school;
    }

    public void setParentName(String parentName) {
        this.parentName = parentName;
    }

    public String getParentName() {
        return parentName;
    }

    public void setParentPhone(String parentPhone) {
        this.parentPhone = parentPhone;
    }

    public String getParentPhone() {
        return parentPhone;
    }

    public void setThumbnail(String thumbnail) {
        this.thumbnail = thumbnail;
    }

    public String getThumbnail() {
        return thumbnail;
    }

    public void setPreliminaryReview(String preliminaryReview) {
        this.preliminaryReview = preliminaryReview;
    }

    public String getPreliminaryReview() {
        return preliminaryReview;
    }

    public void setFirstReview(String firstReview) {
        this.firstReview = firstReview;
    }

    public String getFirstReview() {
        return firstReview;
    }

    public void setFinalReview(String finalReview) {
        this.finalReview = finalReview;
    }

    public String getFinalReview() {
        return finalReview;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public Double getHeight() {
        return height;
    }

    public void setHeight(Double height) {
        this.height = height;
    }

    public Double getWidth() {
        return width;
    }

    public void setWidth(Double width) {
        this.width = width;
    }

    public String getTeacher() {
        return teacher;
    }

    public void setTeacher(String teacher) {
        this.teacher = teacher;
    }

    public String getAward() {
        return award;
    }

    public void setAward(String award) {
        this.award = award;
    }

    @Override
    public String toString() {
        return "StudentRegistration{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", idNumber='" + idNumber + '\'' +
                ", address='" + address + '\'' +
                ", grade='" + grade + '\'' +
                ", competitionGroup='" + competitionGroup + '\'' +
                ", competitionNumber='" + competitionNumber + '\'' +
                ", height=" + height +
                ", width=" + width +
                ", workType='" + workType + '\'' +
                ", otherWorkType='" + otherWorkType + '\'' +
                ", workName='" + workName + '\'' +
                ", teacher='" + teacher + '\'' +
                ", school='" + school + '\'' +
                ", parentName='" + parentName + '\'' +
                ", parentPhone='" + parentPhone + '\'' +
                ", thumbnail='" + thumbnail + '\'' +
                ", preliminaryReview='" + preliminaryReview + '\'' +
                ", firstReview='" + firstReview + '\'' +
                ", finalReview='" + finalReview + '\'' +
                ", preliminaryOption='" + preliminaryOption + '\'' +
                ", firstOption='" + firstOption + '\'' +
                ", finalOption='" + finalOption + '\'' +
                ", activityId='" + activityId + '\'' +
                ", award='" + award + '\'' +
                '}';
    }
}
